package com.sce.client;

public enum Mode {

	ABAP("ace/mode/abap"),
	ACTION_SCRIPT("ace/mode/actionscript"),
	ADA("ace/mode/ada"),
	APACHE_CONF("ace/mode/apache_conf"),
	ASCIIDOC("ace/mode/asciidoc"),
	ASSEMBLY_X86("ace/mode/assembly_x86"),
	AUTO_HOT_KEY("ace/mode/autohotkey"),
	BATCH_FILE("ace/mode/batchfile"),
	C9_SEARCH("ace/mode/c9search"),
	C_AND_CPP("ace/mode/c_cpp"),
	CIRRU("ace/mode/cirru"),
	CLOJURE("ace/mode/clojure"),
	COBOL("ace/mode/cobol"),
	COFFEE_SCRIPT("ace/mode/coffee"),
	COLDFUSION("ace/mode/coldfusion"),
	CSHARP("ace/mode/csharp"),
	CSS("ace/mode/css"),
	CURLY("ace/mode/curly"),
	D("ace/mode/d"),
	DART("ace/mode/dart"),
	DIFF("ace/mode/diff"),
	DOCKER_FILE("ace/mode/dockerfile"),
	DOT("ace/mode/dot"),
	DUMMY("ace/mode/dummy"),
	DUMMY_SYNTAX("ace/mode/dummysyntax"),
	EIFFEL("ace/mode/eiffel"),
	EJS("ace/mode/ejs"),
	ELIXIR("ace/mode/elixir"),
	ELM("ace/mode/elm"),
	ER_LANG("ace/mode/erlang"),
	FORTH("ace/mode/forth"),
	FREE_MARKER("ace/mode/ftl"),
	GCODE("ace/mode/gcode"),
	GHERKIN("ace/mode/gherkin"),
	GITIGNORE("ace/mode/gitignore"),
	GLSL("ace/mode/glsl"),
	GO("ace/mode/golang"),
	GROOVY("ace/mode/groovy"),
	HAML("ace/mode/haml"),
	HANDLEBARS("ace/mode/handlebars"),
	HASKELL("ace/mode/haskell"),
	HAXE("ace/mode/haxe"),
	HTML("ace/mode/html"),
	HTML_RUBY("ace/mode/html_ruby"),
	INI("ace/mode/ini"),
	IO("ace/mode/io"),
	JACK("ace/mode/jack"),
	JADE("ace/mode/jade"),
	JAVA("ace/mode/java"),
	JAVA_SCRIPT("ace/mode/javascript"),
	JSON("ace/mode/json"),
	JSON_IQ("ace/mode/jsoniq"),
	JSP("ace/mode/jsp"),
	JSX("ace/mode/jsx"),
	JULIA("ace/mode/julia"),
	LATEX("ace/mode/latex"),
	LESS("ace/mode/less"),
	LIQUID("ace/mode/liquid"),
	LISP("ace/mode/lisp"),
	LIVE_SCRIPT("ace/mode/livescript"),
	LOGIQL("ace/mode/logiql"),
	LSL("ace/mode/lsl"),
	LUA("ace/mode/lua"),
	LUAPAGE("ace/mode/luapage"),
	LUCENE("ace/mode/lucene"),
	MAKE_FILE("ace/mode/makefile"),
	MARK_DOWN("ace/mode/markdown"),
	MARK("ace/mode/mask"),
	MATLAB("ace/mode/matlab"),
	MEL("ace/mode/mel"),
	MUSH_CODE("ace/mode/mushcode"),
	MYSQL("ace/mode/mysql"),
	NIX("ace/mode/nix"),
	OBJECTIVE_C("ace/mode/objectivec"),
	O_CAML("ace/mode/ocaml"),
	PASCAL("ace/mode/pascal"),
	PERL("ace/mode/perl"),
	PGSQL("ace/mode/pgsql"),
	PHP("ace/mode/php"),
	POWER_SHELL("ace/mode/powershell"),
	PRAAT("ace/mode/praat"),
	PROLOG("ace/mode/prolog"),
	PROPERTIES("ace/mode/properties"),
	PROTOBUF("ace/mode/protobuf"),
	PYTHON("ace/mode/python"),
	R("ace/mode/r"),
	RDOC("ace/mode/rdoc"),
	RHTML("ace/mode/rhtml"),
	RUBY("ace/mode/ruby"),
	RUST("ace/mode/rust"),
	SASS("ace/mode/sass"),
	SCAD("ace/mode/scad"),
	SCALA("ace/mode/scala"),
	SCHEME("ace/mode/scheme"),
	SCSS("ace/mode/scss"),
	SH("ace/mode/sh"),
	SJS("ace/mode/sjs"),
	SMARTY("ace/mode/smarty"),
	SNIPPETS("ace/mode/snippets"),
	SOY_TEMPLATE("ace/mode/soy_template"),
	SPACE("ace/mode/space"),
	SQL("ace/mode/sql"),
	STYLUS("ace/mode/stylus"),
	SVG("ace/mode/svg"),
	TLC("ace/mode/tcl"),
	TEX("ace/mode/tex"),
	TEXT("ace/mode/text"),
	TEXTILE("ace/mode/textile"),
	TOML("ace/mode/toml"),
	TWIG("ace/mode/twig"),
	TYPE_SCRIPT("ace/mode/typescript"),
	VALA("ace/mode/vala"),
	VB_SCRIPT("ace/mode/vbscript"),
	VELOCITY("ace/mode/velocity"),
	VERILOG("ace/mode/verilog"),
	VHDL("ace/mode/vhdl"),
	XML("ace/mode/xml"),
	XQUERY("ace/mode/xquery"),
	YAML("ace/mode/yaml");
	
	private String value;
	
	private Mode(String value) {
		this.value = value;
	}
	
	protected String getValue() {
		return value;
	}
	
	public static Mode getByValue(String value) {
		for (Mode mode : values()) {
			if (mode.getValue().equalsIgnoreCase(value)) {
				return mode;
			}
		}
		return null;
	}
	
}